package com.zy.utils;

import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;

/**
 * 分页类
 * @author 张宇
 * @date 2021/12/12 22:32
 */
public class Pages
{

    public static Map<String,Object> pageUtil(int pageNo,int pageSize,List<?> list)
    {
        int num = list.size()/pageSize;//总页码
        if(list.size()%pageSize != 0)
        {
            num++;
        }

        List<Object> rows = null;//当页数据
        if(pageNo < num)
        {
            rows = new ArrayList<>();
            for(int i=(pageNo-1)*pageSize; i<=pageNo*pageSize-1; i++)
            {//循环取得非最后一页数据
                rows.add(list.get(i));
            }
        }
        else
        {
            rows = new ArrayList<>();
            for(int i=(pageNo-1)*pageSize; i<=list.size()-1; i++)
            {//循环取得最后一页数据
                rows.add(list.get(i));
            }
        }

        Map<String,Object> map = new LinkedHashMap<>();
        map.put("code",200);
        map.put("pagesTotalCount",list.size());//总条数
        map.put("data",rows);//信息集合
        map.put("msg","操作成功！");

        return map;
    }

}
